/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package fr.sorbonne.inf5.yams.model;

import fr.sorbonne.inf5.yams.exceptions.AccessDataException;
import java.util.Iterator;

/**
 * Modélise un palmares d'abstract joueur associé à leur score
 * mise à disposition d'une iterateur qui renvoie une Objet LignePalmares
 * @author Oukherfellah Riad
 * @author Dubos Romain
 */
public interface Palmares<LignePalmares> extends Iterable<LignePalmares>{

    /**
     * Permet d'ajouter une lignepalmares au Palmares
     * Un même joueur ne peut avoir deux fois le même score dans le palmarès
     * @param lignePalmares la ligne à ajouter
     */
    public void ajouterLignePalmares(LignePalmares lignePalmares);

    /**
     * Permet de charger les valeurs enregistré dans le palmares
     */
    public void chargerPalmares() throws AccessDataException;

    /**
     * Permet de sauvearder les scores dans le palmares
     * @throws AccessDataException
     */
    public void sauvegarderPalmares() throws AccessDataException;
    

}
